ASP.NET Web Forms এ FileUpload Control ব্যবহার করে আপনি ইউজারের থেকে ফাইল আপলোড করতে পারেন। এই কন্ট্রোলটি ডেভেলপারদের সহজভাবে ফাইলের তথ্য সংগ্রহ এবং সার্ভারে আপলোড করতে সহায়তা করে। এটি HTML File Input Control এর মতো কাজ করে, তবে ASP.NET এর সার্ভার-সাইড ফিচারের সাথে ইন্টিগ্রেটেড।
FileUpload Control ব্যবহার করে আপনি ইউজার থেকে ফাইল নির্বাচন করাতে পারেন এবং সেই ফাইলটি সার্ভারে আপলোড করতে পারেন। এই কন্ট্রোলটি ফাইলের নাম, সাইজ, টাইপ ইত্যাদি তথ্য প্রদান করে এবং ফাইলটি সার্ভারে সেভ করতে সাহায্য করে।
এখানে একটি সহজ উদাহরণ দেয়া হলো যেখানে FileUpload কন্ট্রোল দিয়ে ইউজারের সিলেক্ট করা ফাইল সার্ভারে আপলোড করা হচ্ছে।
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FileUpload.aspx.cs" Inherits="WebApplication1.FileUpload" %>
<!DOCTYPE html>
<html>
<head>
<title>File Upload Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h2>ফাইল আপলোড করুন</h2>
<!-- FileUpload Control -->
<asp:FileUpload id="FileUpload1" runat="server" /><br /><br />
<!-- Button to trigger file upload -->
<asp:Button id="UploadButton" runat="server" Text="ফাইল আপলোড করুন" OnClick="UploadButton_Click" /><br /><br />
<!-- Display message after upload -->
<asp:Label id="UploadStatus" runat="server" Text="" ForeColor="Green"></asp:Label>
</div>
</form>
</body>
</html>
using System;
using System.Web.UI;
namespace WebApplication1
{
public partial class FileUpload : Page
{
protected void UploadButton_Click(object sender, EventArgs e)
{
// Check if file is selected
if (FileUpload1.HasFile)
{
try
{
// Get the file name and set the path where it will be saved
string fileName = FileUpload1.FileName;
string savePath = Server.MapPath("~/Uploads/") + fileName;
// Save the file to the server
FileUpload1.SaveAs(savePath);
// Show success message
UploadStatus.Text = "ফাইল সফলভাবে আপলোড করা হয়েছে: " + fileName;
}
catch (Exception ex)
{
// Show error message
UploadStatus.Text = "এটি ছিল একটি ত্রুটি: " + ex.Message;
UploadStatus.ForeColor = System.Drawing.Color.Red;
}
}
else
{
// Show message if no file selected
UploadStatus.Text = "অনুগ্রহ করে একটি ফাইল সিলেক্ট করুন।";
UploadStatus.ForeColor = System.Drawing.Color.Red;
}
}
}
}
protected void UploadButton_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
{
try
{
// Check file size (limit to 5MB)
if (FileUpload1.PostedFile.ContentLength > 5 * 1024 * 1024)
{
UploadStatus.Text = "ফাইল সাইজ 5MB এর বেশি হতে পারে না।";
UploadStatus.ForeColor = System.Drawing.Color.Red;
return;
}
// Check file extension (allow only .jpg, .png, .pdf)
string fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
if (fileExtension != ".jpg" && fileExtension != ".png" && fileExtension != ".pdf")
{
UploadStatus.Text = "শুধুমাত্র .jpg, .png বা .pdf ফাইল অনুমোদিত।";
UploadStatus.ForeColor = System.Drawing.Color.Red;
return;
}
// Save the file
string fileName = FileUpload1.FileName;
string savePath = Server.MapPath("~/Uploads/") + fileName;
FileUpload1.SaveAs(savePath);
UploadStatus.Text = "ফাইল সফলভাবে আপলোড করা হয়েছে: " + fileName;
}
catch (Exception ex)
{
UploadStatus.Text = "এটি ছিল একটি ত্রুটি: " + ex.Message;
UploadStatus.ForeColor = System.Drawing.Color.Red;
}
}
else
{
UploadStatus.Text = "অনুগ্রহ করে একটি ফাইল সিলেক্ট করুন।";
UploadStatus.ForeColor = System.Drawing.Color.Red;
}
}
FileUpload Control ব্যবহার করে ASP.NET Web Forms অ্যাপ্লিকেশনে ফাইল আপলোড করা খুবই সহজ। ইউজারকে একটি ফাইল সিলেক্ট করতে দেওয়ার পর, SaveAs মেথড দিয়ে সার্ভারে সেই ফাইলটি সেভ করা যায়। ফাইল সাইজ এবং টাইপ ভ্যালিডেশন করার মাধ্যমে নিরাপত্তা নিশ্চিত করা সম্ভব।
common.read_more